package cn.opopopo.design_pattern_learn.结构型.flyweight;

// 享元对象：字符（共享字体、颜色等样式）
class Character {
    private char value;                    // 字符本身（也算内部状态）
    private CharacterStyle style;          // 共享的样式（内部状态）

    // 构造时共享 style，不保存位置等外部状态
    public Character(char value, CharacterStyle style) {
        this.value = value;
        this.style = style;
    }

    // 外部状态（位置）由客户端传入
    public void display(int x, int y) {
        System.out.println("显示字符: '" + value + "' " + style +
                " 在位置 (" + x + ", " + y + ")");
    }
}